#ifndef __Like__
#define __Like__

#include "log.hpp"

#define pathname "/home/Sulle/linux-code/sharemem/"
#define proj_id 0x002134
#define size 4096

Log log;

//创建key
int Getkey()
{
    key_t key = ftok(pathname, proj_id);
    return key;//操作系统的唯一标识符
}

//创建共享内存
int Myget(int flag)
{
    log.enable(ClassFile);
    int n = shmget(Getkey(), size, flag);
    if(n<0)
    {
        log(Error,"无法创建共享内存:%s ,errno:%d",strerror(errno),errno);
        exit(1);
    }
    log(Info,"创建共享内存:%d",n);
    return n;
}

int Creatshare()
{
    int n = Myget(IPC_CREAT|IPC_EXCL|0666);//没有就创建，有就报错
    return n;
}

int getshare()
{
    int n = Myget(IPC_CREAT);//没有就创建，有就直接用该共享内存
    return n;
}



#endif